#include "UP_test.h"
#include "gd32f4xx.h"
#include "systick.h"
#include <stdio.h>
#include "UP_GPIO.h"

#define LED1 PE3
#define LED2 PD7
#define LED3 PG3
#define LED4 PA5

#define KEY PA0

int GPIO_test_output(void)
{
    systick_config();

    GPIO_Init(LED1, 0);
    GPIO_Init(LED2, 0);
    GPIO_Init(LED3, 0);
    GPIO_Init(LED4, 0);

    while (1) {
        
        GPIO_Set(LED1, 1);
        GPIO_Set(LED2, 1);
        GPIO_Set(LED3, 1);
        GPIO_Set(LED4, 1);

        delay_1ms(500);

        GPIO_Set(LED1, 0);
        GPIO_Set(LED2, 0);
        GPIO_Set(LED3, 0);
        GPIO_Set(LED4, 0);

        delay_1ms(500);
    }
}

void on_key_down(){
    GPIO_Toggle(LED1);
}

int GPIO_test_input(void)
{
    systick_config();

    GPIO_Init(LED1, 0);
    GPIO_Init(KEY, 3);

    while (1) {
        GPIO_key_scan(KEY);
    }
}